package pack601;
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;
/**
 * @author wenze-zero
 */
public class StarHandler implements InvocationHandler {
    Star realStar;
    public StarHandler(Star realStar) {
        super();
        this.realStar = realStar;
    }
    @Override
    public Object invoke(Object proxy, Method method, Object[] args)
            throws Throwable {
        Object object = null;
        // 在代理真实对象前，我们可以做些自己的操作
        System.out.println("面谈");
        if(method.getName().equals("sing")) {
            object = method.invoke(realStar, args);
        }
        // 在代理真是对象后，我们可以做些自己的操作
        System.out.println("收钱");
        return object;
    }
}
